/**
 * Copyright (c) 2013-Now http://jeesite.com All rights reserved.
 */
package com.jeesite.modules.base.entity.investorfinancialinfo;

import com.jeesite.common.entity.DataEntity;
import com.jeesite.common.mybatis.annotation.Column;
import com.jeesite.common.mybatis.annotation.Table;
import com.jeesite.common.mybatis.mapper.query.QueryType;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotBlank;

/**
 * 资方金融费率维护Entity
 * @author LV
 * @version 2021-03-03
 */
@Table(name="t_lc_financial_ratio", alias="a", columns={
		@Column(name="lc_financial_ratio_id", attrName="lcFinancialRatioId", label="LC金融比例ID", isPK=true),
		@Column(name="options_name", attrName="optionsName", label="选项名称", queryType=QueryType.LIKE),
		@Column(name="margin_ratio", attrName="marginRatio", label="保证金比例"),
		@Column(name="prepaid_expense_ratio", attrName="prepaidExpenseRatio", label="预付费用比例"),
		@Column(name="negotiated_ratio", attrName="negotiatedRatio", label="押汇比例"),
		@Column(name="investor_financial_info_id", attrName="investorFinancialInfoId.investorFinancialInfoId", label="资方金融信息ID"),
	}, orderBy="a.lc_financial_ratio_id ASC"
)
public class LcFinancialRatio extends DataEntity<LcFinancialRatio> {
	
	private static final long serialVersionUID = 1L;
	private String lcFinancialRatioId;		// LC金融比例ID
	private String optionsName;		// 选项名称
	private String marginRatio;		// 保证金比例
	private String prepaidExpenseRatio;		// 预付费用比例
	private String negotiatedRatio;		// 押汇比例
	private InvestorFinancialInfo investorFinancialInfoId;		// 资方金融信息ID 父类
	
	public LcFinancialRatio() {
		this(null);
	}


	public LcFinancialRatio(InvestorFinancialInfo investorFinancialInfoId){
		this.investorFinancialInfoId = investorFinancialInfoId;
	}
	
	public String getLcFinancialRatioId() {
		return lcFinancialRatioId;
	}

	public void setLcFinancialRatioId(String lcFinancialRatioId) {
		this.lcFinancialRatioId = lcFinancialRatioId;
	}
	
	@NotBlank(message="选项名称不能为空")
	@Length(min=0, max=100, message="选项名称长度不能超过 100 个字符")
	public String getOptionsName() {
		return optionsName;
	}

	public void setOptionsName(String optionsName) {
		this.optionsName = optionsName;
	}
	
	@NotBlank(message="保证金比例不能为空")
	@Length(min=0, max=10, message="保证金比例长度不能超过 10 个字符")
	public String getMarginRatio() {
		return marginRatio;
	}

	public void setMarginRatio(String marginRatio) {
		this.marginRatio = marginRatio;
	}
	
	@NotBlank(message="预付费用比例不能为空")
	@Length(min=0, max=10, message="预付费用比例长度不能超过 10 个字符")
	public String getPrepaidExpenseRatio() {
		return prepaidExpenseRatio;
	}

	public void setPrepaidExpenseRatio(String prepaidExpenseRatio) {
		this.prepaidExpenseRatio = prepaidExpenseRatio;
	}
	
	@NotBlank(message="押汇比例不能为空")
	@Length(min=0, max=10, message="押汇比例长度不能超过 10 个字符")
	public String getNegotiatedRatio() {
		return negotiatedRatio;
	}

	public void setNegotiatedRatio(String negotiatedRatio) {
		this.negotiatedRatio = negotiatedRatio;
	}
	
	public InvestorFinancialInfo getInvestorFinancialInfoId() {
		return investorFinancialInfoId;
	}

	public void setInvestorFinancialInfoId(InvestorFinancialInfo investorFinancialInfoId) {
		this.investorFinancialInfoId = investorFinancialInfoId;
	}
	
}